/**
 * Client类是程序的入口点，用于演示命令模式的使用
 * 通过这个类，我们模拟了一个功能按钮的不同行为，这些行为由按钮上绑定的命令决定
 */
public class Client {
    /**
     * main方法是程序执行的起点
     * @param args 命令行参数，本例中未使用
     */
    public static void main(String[] args) {
        // 创建一个功能按钮实例
        FunctionButton functionButton = new FunctionButton();
        
        // 创建一个退出命令实例，用于执行退出操作
        Command command = new ExitCommand();
        // 将退出命令设置到功能按钮上，此时按钮点击将执行退出操作
        functionButton.setCommand(command);
        // 模拟点击功能按钮，执行绑定的退出命令
        functionButton.click();
        System.out.println("=========================");
        
        // 创建一个帮助命令实例，用于执行显示帮助信息操作
        command = new HelpCommand();
        // 将帮助命令设置到功能按钮上，此时按钮点击将执行显示帮助信息操作
        functionButton.setCommand(command);
        // 再次模拟点击功能按钮，执行绑定的帮助命令
        functionButton.click();
    }
}
